home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1999 January - Disc 2 / Macworld (1999-01) (Disk 2).dmg / Serious Demos / Symbolic Composer 4.2 / Environment / Projects / Contributed Scores / Peter Stone Punctus / Aids RNA Music next >
Lisp/Scheme  |  1998-11-15  |  16KB  |  334 lines

  1. (defun open-gene (l)
  2.    (prog (out a elem)
  3.       loop
  4.          (cond ((null l) (return (reversewoc out))))
  5.          (setq a (explodec (car l)))
  6.          (while (not (null a))
  7.                 (setq elem (car a))
  8.                 (cond ((equal elem 't)
  9.                        (setq elem 'b))
  10.                       ((equal elem 'g)
  11.                        (setq elem 'd)))
  12.                 (setq out (xcons out elem))
  13.                 (setq a (cdr a)))
  14.          (setq l (cdr l))
  15.          (go loop)))
  16.  
  17. ; ----- pepside coding
  18. ; This set ups symbol correspondeces to certain notes selected
  19. ; to produce nice chord sequences from the RNA strand. These
  20. ; tonalities transpose as groups with the control of the the
  21. ; RNA in a couple of levels, thus adding more interest in the
  22. ; tonality scheme.
  23.  
  24. (defun pep-to-chord-1 (pep)
  25.   (cadr (assoc pep '((a (f 4 g# 4 c 5 f 6))
  26.                      (b (g 4 c# 5 c# 5 e 5))
  27.                      (c (f 4 c# 5 f 4 c# 5))
  28.                      (d (c 4 d# 4 d 4 g 4))))))
  29.  
  30. (defun pep-to-chord-2 (pep)
  31.   (cadr (assoc pep 
  32.                '((a (c 4 f 4 g 4 c 4))
  33.                  (b (a# 4 a# 4 f 5 c 5))
  34.                  (c (c# 5 a# 4 c# 5 g 4))
  35.                  (d (g 4 g 4 f# 4 c# 4))))))
  36.  
  37. (defun pep-to-chord-3 (pep)
  38.   (cadr (assoc pep 
  39.                '((a (f 5  g# 5 a# 5 c 6))
  40.                  (b (a# 5 a# 5 f 5 c 6))
  41.                  (c (g 5 g 6 g 7 g 8))
  42.                  (d (g 5 g 5 f# 5 c# 5))))))
  43.  
  44. (defun pep-to-chord (pep type transp)
  45.    (cond ((equal type '1)
  46.           (transpose-chord (pep-to-chord-1 pep) transp))
  47.          ((equal type '2)
  48.           (transpose-chord (pep-to-chord-2 pep) transp))
  49.          ((equal type '3)
  50.           (transpose-chord (pep-to-chord-3 pep) transp))
  51.          (t (diagnostic (list "illegal type in pep-to-chord" $cr$)))))
  52.  
  53. (defun pep-to-trans (pep)
  54.   (cadr (assoc pep '((a 0)
  55.                      (b -2)
  56.                      (c 5)
  57.                      (d 7)))))
  58.  
  59. (defun peps-to-chords (peps type trans-len)
  60.   (prog (out trans-val chord-val count transpeps)
  61.     (cond ((null trans-len) (setq trans-len 4)))
  62.     (setq transpeps peps)
  63.     (setq count trans-len)
  64.     loop
  65.     (cond ((null peps) (return (reversewoc out))))
  66.     (cond ((equal count trans-len)
  67.            (setq trans-val (pep-to-trans (car transpeps)))
  68.            (setq transpeps (cdr transpeps))
  69.            (setq count 1))
  70.           (t (setq count (add1 count))))
  71.     (setq chord-val (pep-to-chord (car peps) type trans-val))
  72.     (setq out (xcons out chord-val))
  73.     (setq peps (cdr peps))
  74.     (go loop)))
  75.  
  76. ; Here is the HIV (AIDS virus) HXB2 variant RNA code.
  77.  
  78. (setq pep (open-gene
  79. '(tggaagggct aattcactcc caacgaagac aagatatcct tgatctgtgg atctaccaca 
  80.   cacaaggcta cttccctgat tagcagaact acacaccagg gccagggatc agatatccac 
  81.   tgacctttgg atggtgctac aagctagtac cagttgagcc agagaagtta gaagaagcca 
  82.   acaaaggaga gaacaccagc ttgttacacc ctgtgagcct gcatggaatg gatgacccgg 
  83.   agagagaagt gttagagtgg aggtttgaca gccgcctagc atttcatcac atggcccgag 
  84.   agctgcatcc ggagtacttc aagaactgct gacatcgagc ttgctacaag ggactttccg 
  85.   ctggggactt tccagggagg cgtggcctgg gcgggactgg ggagtggcga gccctcagat 
  86.   cctgcatata agcagctgct ttttgcctgt actgggtctc tctggttaga ccagatctga 
  87.   gcctgggagc tctctggcta actagggaac ccactgctta agcctcaata aagcttgcct 
  88.   tgagtgcttc aagtagtgtg tgcccgtctg ttgtgtgact ctggtaacta gagatccctc 
  89.   agaccctttt agtcagtgtg gaaaatctct agcagtggcg cccgaacagg gacctgaaag 
  90.   cgaaagggaa accagagctc tctcgacgca ggactcggct tgctgaagcg cccgcacggc 
  91.   aagaggcgag gggcggcgac tggtgagtac gccaaaaatt ttgactagcg gaggctagaa 
  92.   ggagagagat gggtgcgaga gcgtcagtat taagcggggg agaattagat cgatgggaaa 
  93.   aaattcggtt aaggccaggg ggaaagaaaa aatataaatt aaaacatata gtatgggcaa 
  94.   gcagggagct agaacgattc gcagttaatc ctggcctgtt agaaacatca gaaggctgta 
  95.   gacaaatact gggacagcta caaccatccc ttcagacagg atcagaagaa cttagatcat
  96.   tatataatac agtagcaacc ctctattgtg tgcatcaaag gatagagata aaagacacca 
  97.   aggaagcttt agacaagata gaggaagagc aaaacaaaag taagaaaaaa gcacagcaag 
  98.   cagcagctga cacaggacac agcaatcagg tcagccaaaa ttaccctata gtgcagaaca 
  99.   tccaggggca aatggtacat caggccatat cacctagaac tttaaatgca tgggtaaaag 
  100.   tagtagaaga gaaggctttc agcccagaag tgatacccat gttttcagca ttatcagaag 
  101.   gagccacccc acaagattta aacaccatgc taaacacagt ggggggacat caagcagcca 
  102.   tgcaaatgtt aaaagagacc atcaatgagg aagctgcaga atgggataga gtgcatccag 
  103.   tgcatgcagg gcctattgca ccaggccaga tgagagaacc aaggggaagt gacatagcag 
  104.   gaactactag tacccttcag gaacaaatag gatggatgac aaataatcca cctatcccag 
  105.   taggagaaat ttataaaaga tggataatcc tgggattaaa taaaatagta agaatgtata 
  106.   gccctaccag cattctggac ataagacaag gaccaaagga accctttaga gactatgtag 
  107.   accggttcta taaaactcta agagccgagc aagcttcaca ggaggtaaaa aattggatga 
  108.   cagaaacctt gttggtccaa aatgcgaacc cagattgtaa gactatttta aaagcattgg 
  109.   gaccagcggc tacactagaa gaaatgatga cagcatgtca gggagtagga ggacccggcc 
  110.   ataaggcaag agttttggct gaagcaatga gccaagtaac aaattcagct accataatga 
  111.   tgcagagagg caattttagg aaccaaagaa agattgttaa gtgtttcaat tgtggcaaag 
  112.   aagggcacac agccagaaat tgcagggccc ctaggaaaaa gggctgttgg aaatgtggaa 
  113.   aggaaggaca ccaaatgaaa gattgtactg agagacaggc taatttttta gggaagatct 
  114.   ggccttccta caagggaagg ccagggaatt ttcttcagag cagaccagag ccaacagccc 
  115.   caccagaaga gagcttcagg tctggggtag agacaacaac tccccctcag aagcaggagc 
  116.   cgatagacaa ggaactgtat cctttaactt ccctcaggtc actctttggc aacgacccct 
  117.   cgtcacaata aagatagggg ggcaactaaa ggaagctcta ttagatacag gagcagatga 
  118.   tacagtatta gaagaaatga gtttgccagg aagatggaaa ccaaaaatga tagggggaat 
  119.   tggaggtttt atcaaagtaa gacagtatga tcagatactc atagaaatct gtggacataa 
  120.   agctataggt acagtattag taggacctac acctgtcaac ataattggaa gaaatctgtt 
  121.   gactcagatt ggttgcactt taaattttcc cattagccct attgagactg taccagtaaa 
  122.   attaaagcca ggaatggatg gcccaaaagt taaacaatgg ccattgacag aagaaaaaat 
  123.   aaaagcatta gtagaaattt gtacagagat ggaaaaggaa gggaaaattt caaaaattgg 
  124.   gcctgaaaat ccatacaata ctccagtatt tgccataaag aaaaaagaca gtactaaatg 
  125.   gagaaaatta gtagatttca gagaacttaa taagagaact caagacttct gggaagttca 
  126.   attaggaata ccacatcccg cagggttaaa aaagaaaaaa tcagtaacag tactggatgt 
  127.   gggtgatgca tatttttcag ttcccttaga tgaagacttc aggaagtata ctgcatttac 
  128.   catacctagt ataaacaatg agacaccagg gattagatat cagtacaatg tgcttccaca 
  129.   gggatggaaa ggatcaccag caatattcca aagtagcatg acaaaaatct tagagccttt 
  130.   tagaaaacaa aatccagaca tagttatcta tcaatacatg gatgatttgt atgtaggatc 
  131.   tgacttagaa atagggcagc atagaacaaa aatagaggag ctgagacaac atctgttgag 
  132.   gtggggactt accacaccag acaaaaaaca tcagaaagaa cctccattcc tttggatggg 
  133.   ttatgaactc catcctgata aatggacagt acagcctata gtgctgccag aaaaagacag 
  134.   ctggactgtc aatgacatac agaagttagt ggggaaattg aattgggcaa gtcagattta 
  135.   cccagggatt aaagtaaggc aattatgtaa actccttaga ggaaccaaag cactaacaga 
  136.   agtaatacca ctaacagaag aagcagagct agaactggca gaaaacagag agattctaaa 
  137.   agaaccagta catggagtgt attatgaccc atcaaaagac ttaatagcag aaatacagaa 
  138.   gcaggggcaa ggccaatgga catatcaaat ttatcaagag ccatttaaaa atctgaaaac 
  139.   aggaaaatat gcaagaatga ggggtgccca cactaatgat gtaaaacaat taacagaggc 
  140.   agtgcaaaaa ataaccacag aaagcatagt aatatgggga aagactccta aatttaaact 
  141.   gcccatacaa aaggaaacat gggaaacatg gtggacagag tattggcaag ccacctggat 
  142.   tcctgagtgg gagtttgtta atacccctcc cttagtgaaa ttatggtacc agttagagaa 
  143.   agaacccata gtaggagcag aaaccttcta tgtagatggg gcagctaaca gggagactaa 
  144.   attaggaaaa gcaggatatg ttactaatag aggaagacaa aaagttgtca ccctaactga 
  145.   cacaacaaat cagaagactg agttacaagc aatttatcta gctttgcagg attcgggatt 
  146.   agaagtaaac atagtaacag actcacaata tgcattagga atcattcaag cacaaccaga 
  147.   tcaaagtgaa tcagagttag tcaatcaaat aatagagcag ttaataaaaa aggaaaaggt 
  148.   ctatctggca tgggtaccag cacacaaagg aattggagga aatgaacaag tagataaatt 
  149.   agtcagtgct ggaatcagga aagtactatt tttagatgga atagataagg cccaagatga 
  150.   acatgagaaa tatcacagta attggagagc aatggctagt gattttaacc tgccacctgt 
  151.   agtagcaaaa gaaatagtag ccagctgtga taaatgtcag ctaaaaggag aagccatgca 
  152.   tggacaagta gactgtagtc caggaatatg gcaactagat tgtacacatt tagaaggaaa 
  153.   agttatcctg gtagcagttc atgtagccag tggatatata gaagcagaag ttattccagc 
  154.   agaaacaggg caggaaacag catattttct tttaaaatta gcaggaagat ggccagtaaa 
  155.   aacaatacat actgacaatg gcagcaattt caccggtgct acggttaggg ccgcctgttg 
  156.   gtgggcggga atcaagcagg aatttggaat tccctacaat ccccaaagtc aaggagtagt 
  157.   agaatctatg aataaagaat taaagaaaat tataggacag gtaagagatc aggctgaaca 
  158.   tcttaagaca gcagtacaaa tggcagtatt catccacaat tttaaaagaa aaggggggat 
  159.   tggggggtac agtgcagggg aaagaatagt agacataata gcaacagaca tacaaactaa 
  160.   agaattacaa aaacaaatta caaaaattca aaattttcgg gtttattaca gggacagcag 
  161.   aaattcactt tggaaaggac cagcaaagct cctctggaaa ggtgaagggg cagtagtaat 
  162.   acaagataat agtgacataa aagtagtgcc aagaagaaaa gcaaagatca ttagggatta 
  163.   tggaaaacag atggcaggtg atgattgtgt ggcaagtaga caggatgagg attagaacat 
  164.   ggaaaagttt agtaaaacac catatgtatg tttcagggaa agctagggga tggttttata 
  165.   gacatcacta tgaaagccct catccaagaa taagttcaga agtacacatc ccactagggg 
  166.   atgctagatt ggtaataaca acatattggg gtctgcatac aggagaaaga gactggcatt 
  167.   tgggtcaggg agtctccata gaatggagga aaaagagata tagcacacaa gtagaccctg 
  168.   aactagcaga ccaactaatt catctgtatt actttgactg tttttcagac tctgctataa 
  169.   gaaaggcctt attaggacac atagttagcc ctaggtgtga atatcaagca ggacataaca 
  170.   aggtaggatc tctacaatac ttggcactag cagcattaat aacaccaaaa aagataaagc 
  171.   cacctttgcc tagtgttacg aaactgacag aggatagatg gaacaagccc cagaagacca 
  172.   agggccacag agggagccac acaatgaatg gacactagag cttttagagg agcttaagaa 
  173.   tgaagctgtt agacattttc ctaggatttg gctccatggc ttagggcaac atatctatga 
  174.   aacttatggg gatacttggg caggagtgga agccataata agaattctgc aacaactgct 
  175.   gtttatccat tttcagaatt gggtgtcgac atagcagaat aggcgttact cgacagagga 
  176.   gagcaagaaa tggagccagt agatcctaga ctagagccct ggaagcatcc aggaagtcag 
  177.   cctaaaactg cttgtaccaa ttgctattgt aaaaagtgtt gctttcattg ccaagtttgt 
  178.   ttcataacaa aagccttagg catctcctat ggcaggaaga agcggagaca gcgacgaaga 
  179.   gctcatcaga acagtcagac tcatcaagct tctctatcaa agcagtaagt agtacatgta 
  180.   acgcaaccta taccaatagt agcaatagta gcattagtag tagcaataat aatagcaata 
  181.   gttgtgtggt ccatagtaat catagaatat aggaaaatat taagacaaag aaaaatagac 
  182.   aggttaattg atagactaat agaaagagca gaagacagtg gcaatgagag tgaaggagaa 
  183.   atatcagcac ttgtggagat gggggtggag atggggcacc atgctccttg ggatgttgat 
  184.   gatctgtagt gctacagaaa aattgtgggt cacagtctat tatggggtac ctgtgtggaa 
  185.   ggaagcaacc accactctat tttgtgcatc agatgctaaa gcatatgata cagaggtaca 
  186.   taatgtttgg gccacacatg cctgtgtacc cacagacccc aacccacaag aagtagtatt 
  187.   ggtaaatgtg acagaaaatt ttgacatgtg gaaaaatgac atggtagaac agatgcatga 
  188.   ggatataatc agtttatggg atcaaagcct aaagccatgt gtaaaattaa ccccactctg 
  189.   tgttagttta aagtgcactg atttgaagaa tgatactaat accaatagta gtagcgggag 
  190.   aatgataatg gagaaaggag agataaaaaa ctgctctttc aatatcagca caagcataag 
  191.   aggtaaggtg cagaaagaat atgcattttt ttataaactt gatataatac caatagataa 
  192.   tgatactacc agctatagct tgacaagttg taacacctca gtcattacac aggcctgtcc 
  193.   aaaggtatcc tttgagccaa ttcccataca ttattgtgcc ccggctggtt ttgcgattct 
  194.   aaaatgtaat aataagacgt tcaatggaac aggaccatgt acaaatgtca gcacagtaca 
  195.   atgtacacat ggaattaggc cagtagtatc aactcaactg ctgttaaatg gcagtctagc 
  196.   agaagaagag gtagtaatta gatctgtcaa tttcacggac aatgctaaaa ccataatagt 
  197.   acagctgaac acatctgtag aaattaattg tacaagaccc aacaacaata caagaaaaag 
  198.   aatccgtatc cagagaggac cagggagagc atttgttaca ataggaaaaa taggaaatat 
  199.   gagacaagca cattgtaaca ttagtagagc aaaatggaat aacactttaa aacagataga 
  200.   tagcaaatta agagaacaat tcggaaataa taaaacaata atctttaagc aatcctcagg 
  201.   aggggaccca gaaattgtaa cgcacagttt taattgtgga ggggaatttt tctactgtaa 
  202.   ttcaacacaa ctgtttaata gtacttggtt taatagtact tggagtactg aagggtcaaa 
  203.   taacactgaa ggaagtgaca caatcaccct cccatgcaga ataaaacaaa ttataaacat 
  204.   gtggcagaaa gtaggaaaag caatgtatgc ccctcccatc agtggacaaa ttagatgttc 
  205.   atcaaatatt acagggctgc tattaacaag agatggtggt aatagcaaca atgagtccga 
  206.   gatcttcaga cttggaggag gagatatgag ggacaattgg agaagtgaat tatataaata 
  207.   taaagtagta aaaattgaac cattaggagt agcacccacc aaggcaaaga gaagagtggt 
  208.   gcagagagaa aaaagagcag tgggaatagg agctttgttc cttgggttct tgggagcagc 
  209.   aggaagcact atgggcgcag cctcaatgac gctgacggta caggccagac aattattgtc 
  210.   tggtatagtg cagcagcaga acaatttgct gagggctatt gaggcgcaac agcatctgtt 
  211.   gcaactcaca gtctggggca tcaagcagct ccaagcaaga atcctagctg tggaaagata 
  212.   cctaaaggat caacagctcc tagggatttg gggttgctct ggaaaactca tttgcaccac 
  213.   tgctgtgcct tggaatgcta gttggagtaa taaatctctg gaacagatct ggaatcacac 
  214.   gacctggatg gagtgggaca gagaaattaa caattacaca agcttaatac actccttaat 
  215.   tgaagaatcg caaaaccagc aagaaaagaa tgaacaagaa ttattggaat tagataaatg 
  216.   ggcaagtttg tggaattggt ttaacataac aaattggctg tggtatataa aattattcat 
  217.   aatgatagta ggaggcttgg taggtttaag aatagttttt gctgtacttt ctatagtgaa 
  218.   tagagttagg cagggatatt caccattatc gtttcagacc cacctcccaa tcccgagggg 
  219.   acccgacagg cccgaaggaa tagaagaaga aggtggagag agagacagag acagatccat 
  220.   tcgattagtg aacggatcct tggcacttat ctgggacgat ctgcggagcc tgtgcctctt 
  221.   cagctaccac cgcttgagag acttactctt gattgtaacg aggattgtgg aacttctggg 
  222.   acgcaggggg tgggaagccc tcaaatattg gtggaatctc ctacagtatt ggagtcagga 
  223.   actaaagaat agtgctgtta gcttgctcaa tgccacagcc atagcagtag ctgaggggac 
  224.   agatagggtt atagaagtag tacaaggagc ttgtagagct attcgccaca tacctagaag 
  225.   aataagacag ggcttggaaa ggattttgct ataagatggg tggcaagtgg tcaaaaagta 
  226.   gtgtgattgg atggcttact gtaagggaaa gaatgagacg agctgagcca gcagcagatg 
  227.   gggtgggagc agcatctcga gacctggaaa aacatggagc aatcacaagt agcaacacag 
  228.   cagctaccaa tgctgcttgt gcctggctag aagcacaaga ggaggaggag gtgggttttc 
  229.   cagtcacacc tcaggtacct ttaagaccaa tgacttacaa ggcagctgta gatcttagcc 
  230.   actttttaaa agaaaagggg ggactggaag ggctaattca ctcccaaaga agacaagata 
  231.   tccttgatct gtggatctac cacacacaag gctacttccc tgattgacag aactacacac 
  232.   cagggccagg ggtcagatat ccactgacct ttggatggtg ctacaagcta gtaccagttg 
  233.   agccagataa gatagaagag gccaataaag gagagaacac cagcttgtta caccctgtga 
  234.   gcctgcatgg gatggatgac ccggagagag aagtgttaga gtggaggttt gacagccgcc 
  235.   tagcatttca tcacgtggcc cgagagctgc atccggagta cttcaagaac tgctgacatc 
  236.   gagcttgcta caagggactt tccgctgggg actttccagg gaggcgtggc ctgggcggga 
  237.   ctggggagtg gcgagccctc agatcctgca tataagcagc tgctttttgc ctgtactggg 
  238.   tctctctggt tagaccagat ctgagcctgg gagctctctg gctaactagg gaacccactg 
  239.   cttaagcctc aataaagctt gccttgagtg cttcaagtag tgtgtgcccg tctgttgtgt 
  240.   gactctggta actagagatc cctcagaccc ttttagtcag tgtggaaaat ctctagca)))
  241.  
  242. ; Set up default length for all instruments.
  243.  
  244. (def-length
  245.    default '1/16
  246. )
  247.  
  248. ; Melodies all follow the same symbols.
  249.  
  250. (def-symbol
  251.    default pep
  252. )
  253.  
  254. ; Tonality is different for all instruments.
  255.  
  256. (def-tonality
  257.    inst1 (peps-to-chords pep 1 4)
  258.    inst2 (peps-to-chords pep 2 4)
  259.    inst3 (peps-to-chords pep 3 4)
  260. )
  261.  
  262. ; Use some variations in velocities.
  263.  
  264. (def-velocity
  265.    inst1 '(65 75 85 90 100 40)
  266.    inst2 '(74 84 70 65 60 94 80 70)
  267.    inst3 '(100 90 80 70 60 50)
  268. )
  269.  
  270. ; Calculate zones from the total length of RNA.
  271.  
  272. (setq zones (symbol-trim (truncate (/ (length pep) (* 16 4))) 
  273.                          '(4/1 4/1 4/1 4/1 4/1 4/1 -4/1 4/1)))
  274.  
  275. (def-zone
  276.    inst1 zones
  277.    inst2 (symbol-scroll 1 (zone-of inst1))
  278.    inst3 (symbol-scroll 1 (zone-of inst2))
  279. )
  280.  
  281. (def-program mu80-sounds
  282.   inst1 ((flute) (flute) (flute) (flute) (bassoon)
  283.          (panflute) (panflute) (panflute) (panflute) (trumpet))
  284.   inst2 warmpad
  285.   inst3 ((nylongtr) (nylongtr) (nylongtr) (nylongtr) (marimba))
  286. )
  287.  
  288. ; Play 70 percent of the maximum value with +-10 percent variation range
  289. ; controlled by Brownian noise.
  290.  
  291. (def-expression
  292.     default ((legato 70 10 0.4))
  293. )
  294.  
  295. (def-controller mu80-controllers
  296.   (inst1 volume (list '(69) '(69) '(69) '(69) '(73)
  297.                       '(80) '(80) '(80) '(80) '(73))
  298.          panning (list (vector-round 0 15 (gen-noise-white 10 1 0.51))))
  299.   (inst2 volume (list '(80)'(80) '(100))
  300.          resonance (list '(125))
  301.          filter (list '(125) 
  302.                       '(125)
  303.                       '(125) 
  304.                       '(122) 
  305.                       '(125)
  306.                       (vector-round 80 127 (gen-sin 1 0.3 64)))
  307.          panning (list (vector-round 44 90 (gen-sin 6 0.3 128))))
  308.   (inst3 volume (list '(59))
  309.          panning (list (vector-round 95 127 (gen-noise-white 10 1.0 0.52))))
  310. )
  311.  
  312. ; Compile the MIDI file
  313.  
  314. (def-channel
  315.    inst1 5
  316.    inst2 6 
  317.    inst3 7
  318. )
  319.  
  320. (def-tuning
  321.   inst1 (vector-round -300 300 (gen-noise-white 1024 1.0 0.52))
  322.   inst2 (vector-round -300 300 (gen-noise-white 1024 1.0 0.252))
  323.   inst3 (vector-round -300 300 (gen-noise-white 1024 1.0 0.352))
  324. )
  325.  
  326. (midiport :printer)
  327.  
  328. (compile-instrument-p "ccl;output:" "aids rna"
  329.    inst1
  330.    inst2
  331.    inst3
  332. )
  333.  
  334.